﻿<!DOCTYPE HTML>
<!-- saved from url=(0079)http://172.13.19.31:6060/note_html/服务器/Apache-tomcat/1001010-简介与安装.html -->
<!DOCTYPE html PUBLIC "" ""><HTML><HEAD><META content="IE=11.0000" 
http-equiv="X-UA-Compatible">
 
<META http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
<TITLE>简介与安装</TITLE> <LINK href="简介与安装_files/standalone.css" rel="stylesheet"> 
<LINK href="简介与安装_files/overlay-apple.css" rel="stylesheet"> <LINK href="简介与安装_files/article_edit.css" 
rel="stylesheet"> 
<STYLE type="text/css">
	#content{
		margin: 5px 10px;
	}
</STYLE>
	 <!-- 代码高亮 -->	 <LINK href="简介与安装_files/shCoreEclipse.css" rel="stylesheet">
	 <LINK href="简介与安装_files/my-highlighter.css" rel="stylesheet"> 
<META name="GENERATOR" content="MSHTML 11.00.10586.545"></HEAD> 
<BODY>
<DIV id="content">
<H1 align="center">简介与安装</H1>
<P align="right" 
style="margin: 0px 10px 0px 0px; padding: 0px;">最后修改时间：2016-07-08 15:20:11</P>
<HR style="border-width: 2px; border-color: lime;">

<H3>简介</H3>
<P style="text-indent: 0.8cm;">Tomcat是Apache 软件基金会（Apache Software 
Foundation）的Jakarta 项目中的一个核心项目，由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 
的参与和支持，最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现，Tomcat 5支持最新的Servlet 2.4 和JSP 2.0 
规范。因为Tomcat 技术先进、性能稳定，而且免费，因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可，成为目前比较流行的Web 应用服务器。 
</P>
<P style="text-indent: 0.8cm;">Tomcat 服务器是一个免费的开放源代码的Web 
应用服务器，属于轻量级应用服务器，在中小型系统和并发访问用户不是很多的场合下被普遍使用，是开发和调试JSP 
程序的首选。对于一个初学者来说，可以这样认为，当在一台机器上配置好Apache 
服务器，可利用它响应HTML（标准通用标记语言下的一个应用）页面的访问请求。实际上Tomcat 部分是Apache 
服务器的扩展，但它是独立运行的，所以当你运行tomcat 时，它实际上作为一个与Apache 独立的进程单独运行的。 </P>
<P style="text-indent: 0.8cm;">当配置正确时，Apache 为HTML页面服务，而Tomcat 实际上运行JSP 
页面和Servlet。另外，Tomcat和IIS等Web服务器一样，具有处理HTML页面的功能，另外它还是一个Servlet和JSP容器，独立的Servlet容器是Tomcat的默认模式。不过，Tomcat处理静态HTML的能力不如Apache服务器。目前Tomcat最新版本为9.0。 
</P>
<H3>下载</H3>
<H4>apache相关项目的下载地址</H4>
<P style="text-indent: 0.8cm;"><A href="http://archive.apache.org/dist/" target="_black">http://archive.apache.org/dist/</A>&nbsp;&nbsp;官方下载地址，该地址可以下载下载apache下所有的项目。 
</P>
<H4>tomcat官网</H4>
<P style="text-indent: 0.8cm;"><A href="http://tomcat.apache.org/" target="_black">http://tomcat.apache.org/</A>&nbsp;&nbsp;官方下载地址 
</P>
<H3>安装</H3>
<DIV>
<DIV align="left" 
style="padding: 5px 0px;"><FONT>将下载的安装包，放到对应位置解压即可。如图：</FONT></DIV>
<DIV align="left"><IMG alt="图片不存在" 
src="简介与安装_files/20160209-01.png"></DIV></DIV>
<H3>目录结构</H3>
<DIV>
<DIV align="left" 
style="padding: 5px 0px;"><FONT>.bat文件为windows下执行，.sh文件为linux下执行</FONT></DIV>
<DIV align="left"><IMG alt="图片不存在" 
src="简介与安装_files/20160708-01.bmp"></DIV></DIV>
<H3>启动</H3>
<H4>端口占用问题解决</H4>
<PRE class="brush: xml;">&lt;!-- 在${tomcat_home}/conf目录下找到server.xml文件，在文件中找到如下代码 --&gt;

&lt;Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" /&gt;
&lt;!-- 将8080修改为8090,因为8080端口，很可能被其他应用占用了，如果没有占用可不做修改 --&gt;
</PRE>
<DIV>
<DIV align="left"><IMG alt="图片不存在" src="简介与安装_files/20160708-02.png"></DIV>
<DIV align="left" 
style="padding: 5px 0px;"><FONT>8080端口占用，的错误提示</FONT></DIV></DIV>
<H3>Tomcat Server处理一个http请求的过程</H3>
<P 
style="text-indent: 0.8cm;">假设来自客户的请求为：http://localhost:8080/wsota/wsota_index.jsp 
</P>
<OL>
  <LI>请求被发送到本机端口8080，被在那里侦听的Coyote HTTP/1.1 Connector获得</LI>
  <LI>Connector把该请求交给它所在的Service的Engine来处理，并等待来自Engine的回应</LI>
  <LI>Engine获得请求localhost/wsota/wsota_index.jsp，匹配它所拥有的所有虚拟主机Host</LI>
  <LI>Engine匹配到名为localhost的Host（即使匹配不到也把请求交给该Host处理，因为该Host被定义为该Engine的默认主机）</LI>
  <LI>localhost Host获得请求/wsota/wsota_index.jsp，匹配它所拥有的所有Context</LI>
  <LI>Host匹配到路径为/wsota的Context（如果匹配不到就把该请求交给路径名为""的Context去处理）</LI>
  <LI>path="/wsota"的Context获得请求/wsota_index.jsp，在它的mapping 
  table中寻找对应的servlet</LI>
  <LI>Context匹配到URL PATTERN为*.jsp的servlet，对应于JspServlet类</LI>
  <LI>构造HttpServletRequest对象和HttpServletResponse对象，作为参数调用JspServlet的doGet或doPost方法</LI>
  <LI>Context把执行完了之后的HttpServletResponse对象返回给Host</LI>
  <LI>Host把HttpServletResponse对象返回给Engine</LI>
  <LI>Engine把HttpServletResponse对象返回给Connector</LI>
  <LI>Connector把HttpServletResponse对象返回给客户browser</LI></OL>
<HR style="border-width: 2px; border-color: lime;">

<DIV align="center">©copyright 版权所有   作者：zzy</DIV>
<SCRIPT src="../../pub/syntaxhighlighter/scripts/shCore.js" type="text/javascript"></SCRIPT>
 
<SCRIPT src="../../pub/syntaxhighlighter/scripts/shBrushJava.js" type="text/javascript"></SCRIPT>
	
<SCRIPT src="../../pub/syntaxhighlighter/scripts/shBrushJScript.js" type="text/javascript"></SCRIPT>
 
<SCRIPT src="../../pub/syntaxhighlighter/scripts/shBrushXml.js" type="text/javascript"></SCRIPT>
 
<SCRIPT src="../../pub/syntaxhighlighter/scripts/shBrushSql.js" type="text/javascript"></SCRIPT>
 
<SCRIPT src="../../pub/syntaxhighlighter/scripts/shBrushBash.js" type="text/javascript"></SCRIPT>
	
<SCRIPT src="../../pub/syntaxhighlighter/scripts/shBrushVb.js" type="text/javascript"></SCRIPT>
	
<SCRIPT src="../../pub/syntaxhighlighter/scripts/shBrushCss.js" type="text/javascript"></SCRIPT>
	
<SCRIPT src="../../pub/syntaxhighlighter/init.js" type="text/javascript"></SCRIPT>
 
<SCRIPT src="../../pub/js/jquery.tools.min.js" type="text/javascript"></SCRIPT>
 <!-- make all links with the 'rel' attribute open overlays --> 
<SCRIPT>
  $(function() {
      $("#apple img[rel]").overlay({effect: 'apple'});
    });
</SCRIPT>
 </DIV></BODY></HTML>
